8.12 join表格横向拼接(指定联接类型设置)
pd.concat()函数做横向联接时,只有outer和inner两种联接方式,而data.join()函数增加了left和right两种联接
外连接outer,两表的所有索引号都会有
import pandas as pd
y19=pd.read_excel(r "D:\Pyobject2023\object\测试\素材\1.8.10 join表格横向拼接(按索引号或标签).xlsx","2019年" )
y20=pd.read_excel(r "D:\Pyobject2023\object\测试\素材\1.8.10 join表格横向拼接(按索引号或标签).xlsx","2020年" )
print (y19)
print (y20)
df=y19.join(other=y20.set_index( "业务员" ), #指定右表的关联的索引
lsuffix= "19",
rsuffix= "20",
on= "业务员" , #指定左表的关联的索引
how= "outer"
)
print (df)
返回:
业务员 | 部门 | 业绩 | |
---|---|---|---|
0 | 张三 | 销售1部 | 153 |
1 | 李四 | 销售2部 | 228 |
2 | 王麻子 | 销售2部 | 189 |
3 | 小韦 | 销售3部 | 185 |
4 | 许麻子 | 销售1部 | 265 |
5 | 老刘 | 销售1部 | 143 |
业务员 | 部门 | 业绩 | |
---|---|---|---|
0 | 张三 | 销售1部 | 180 |
1 | 李四 | 销售2部 | 124 |
2 | 王麻子 | 销售2部 | 125 |
3 | 许麻子 | 销售1部 | 215 |
4 | 老刘 | 销售1部 | 171 |
5 | 老王 | 销售1部 | 113 |
业务员 | 部门19 | 业绩19 | 部门20 | 业绩20 | |
---|---|---|---|---|---|
0.0 | 张三 | 销售1部 | 153.0 | 销售1部 | 180.0 |
1.0 | 李四 | 销售2部 | 228.0 | 销售2部 | 124.0 |
2.0 | 王麻子 | 销售2部 | 189.0 | 销售2部 | 125.0 |
3.0 | 小韦 | 销售3部 | 185.0 | NaN | NaN |
4.0 | 许麻子 | 销售1部 | 265.0 | 销售1部 | 215.0 |
5.0 | 老刘 | 销售1部 | 143.0 | 销售1部 | 171.0 |
NaN | 老王 | NaN | NaN | 销售1部 | 113.0 |
内连接outer,两表的的交集
import pandas as pd
y19=pd.read_excel(r "D:\Pyobject2023\object\测试\素材\1.8.10 join表格横向拼接(按索引号或标签).xlsx","2019年" )
y20=pd.read_excel(r "D:\Pyobject2023\object\测试\素材\1.8.10 join表格横向拼接(按索引号或标签).xlsx","2020年" )
print (y19)
print (y20)
df=y19.join(other=y20.set_index( "业务员" ), #指定右表的关联的索引
lsuffix= "19" ,
rsuffix= "20" ,
on= "业务员" , #指定左表的关联的索引
how= "inner"
)
print (df)
返回:
业务员 | 部门 | 业绩 | |
---|---|---|---|
0 | 张三 | 销售1部 | 153 |
1 | 李四 | 销售2部 | 228 |
2 | 王麻子 | 销售2部 | 189 |
3 | 小韦 | 销售3部 | 185 |
4 | 许麻子 | 销售1部 | 265 |
5 | 老刘 | 销售1部 | 143 |
业务员 | 部门 | 业绩 | |
---|---|---|---|
0 | 张三 | 销售1部 | 180 |
1 | 李四 | 销售2部 | 124 |
2 | 王麻子 | 销售2部 | 125 |
3 | 许麻子 | 销售1部 | 215 |
4 | 老刘 | 销售1部 | 171 |
5 | 老王 | 销售1部 | 113 |
业务员 | 部门19 | 业绩19 | 部门20 | 业绩20 | |
---|---|---|---|---|---|
0 | 张三 | 销售1部 | 153 | 销售1部 | 180 |
1 | 李四 | 销售2部 | 228 | 销售2部 | 124 |
2 | 王麻子 | 销售2部 | 189 | 销售2部 | 125 |
4 | 许麻子 | 销售1部 | 265 | 销售1部 | 215 |
5 | 老刘 | 销售1部 | 143 | 销售1部 | 171 |